오늘 한 일
- Rust 스터디
- Kotlin 약알림 개발
Rust 스터디
Rust 공식문서 - chap 6.1
6.1 Enum이란?
Rust Swapper 구조 정리
manager
| 사용자 명령 처리 매니저
| 프로세스 매니저
프로세스 매니저: 프로세스를 실행할지 확인
- 프로세스가 메모리에 있는 상황 -> 프로세스 재실행
- 프로세스가 디스크에 있는 상황 -> 프로세스 재실행
- 프로세스가 실행되지 않은 상황 -> 프로세스 스타터 실행
- 프로세스를 종료하는 상황 -> 프로세스 터미네이터 실행
사용자 명령 처리
- 프로세스 스타터 실행
- 프로세스 실행 -> 아무런 프로세스를 못찾았다면 스타터 실행
- 프로세스 종료
process_manager
| 프로세스 스타터
| 프로세스 프로세서
| 프로세스 터미네이터
| 프로세스 파인더(프로세서, 엔더에 사용)
|_ pid 제너레이터
프로세스 스타터/프로세서는 process_allocator를 실행
process_starter
: pid를 부여
| process_allocatorprocess_processor
| process_allocator
process_terminator
: 프로세스 반납
프로세스 할당자
- 현재 프로세스의 위치를 확인(process_finder)해서 디스크 or 스타터면 메모리공간을 확인한다.
- 메모리공간이 비었다면(memory_checker) 적재한다
- 메모리공간이 꽉찼다면 swapper를 실행한다.
process_allocator
|_ swapper
스와퍼
- lru는 우선순위에 적용
- 메모리 공간 이전(swapping)
- 메모리 여유공간 확인(memory_checker), 여유공간이 충분할 때까지 실행
swapper
| swapping
| Memory::memory_checker
전혀 구조가 눈에 들어오지 않는다...
=> UML
, 강주혁이 알려준 ???
등으로 표현하면 좋아보임
Kotlin 개발
Navigating 이슈
한 kt 파일에서 여러 개의 Intent를 이용하여 네비게이팅
⇒ 그냥 Intent 객체를 여러개 만들어서 결정하면 된다.
Toggle Switch 커스터마이징
: 안드로이드 기본 switch가 너무 못생겨서 새롭게 커스터마이징하기로 했다.
Switch Track 커스텀
: 스위치의 배경을 커스터마이징 한 것
배경 1 (ON 상태를 나타내는 것) drawable 파일을 만든다
배경 2 (OFF 상태를 나타내는 것) drawable 파일을 만든다
셀렉터 (상태에 따라 다르게 UI를 표현하는 것) drawable 파일을 만들어 1,2를 명시한다
Switch Thumb 커스텀
: 스위치의 동그라미 버튼을 나타내는 것
상태에 따라서 Text 변화
고민: GuideLine 사용 vs 동적 Constraint 사용
→ 동적 기기에 적합한 UI가 뜨지 않을 것 같음
예를 들어 세로화면으로 볼 때, height가 너무 줄어드므로 동적 배치시 컴포넌트 높이를 GuideLine에만 의존한다면 불편한 UI를 만들 수 있을 것 같음
⇒ 그래서 minWidth 같은 것이 있다는거 아니겠나
dp로 GuideLine 만들기 vs %로 GuideLine 만들기
마무리
1__ 선조들께선 어떤 삶을 살아온 겁니까
2__ 앞으로 개발에 내 생각을 더하기로 했다
그래서 개발하면서 들었던 고민들을 고민
태그로 써놓고 이후에 생각해보거나 모아서 볼 수 있게 하고자한다.